package org.stvd.repository.admin;

import java.util.List;

import org.stvd.entities.admin.UserDep;
import org.stvd.repository.base.BaseDao;

/**
 * @Title UserDepDao
 * @Destribution 用户机构信息映射数据层接口类 
 * @author houzx
 * @date 2020年4月9日
 */
public interface UserDepDao extends BaseDao<UserDep> {

    /**
     * 根据条件查询用户机构映射列表
     * @param userId 用户ID
     * @param guid GUID
     * @return
     */
    List<UserDep> findUserDepByUid(String userId, String guid);

    /**
     * 根据条件查询用户机构映射列表
     * @param depId 机构ID
     * @param guid GUID
     * @return
     */
    List<UserDep> findUserDepByDepid(String depId, String guid);

    /**
     * 插入用户结构映射信息
     * @param userId 用户ID
     * @param depIds 机构ID串
     * @param guid GUID
     */
    void insert(String userId, String[] depIds, String guid);

    /**
     * 根据条件查询用户机构映射信息
     * @param userId 用户ID
     * @param depCode 机构编码
     * @param guid GUID
     * @return
     */
    UserDep getUserDepByDepCode(String userId, String depCode, String guid);

    /**
     * 根据条件删除用户机构映射信息
     * @param userId 用户ID
     * @param depCode 机构编码
     * @param guid GUID
     */
    void deleteUserDepMap(String userId, String depCode, String guid);
}
